Automated assistance for customer care chats

ABSTRACT

A system for providing automated assistance to an agent includes a database that stores an automated assistance session in association with a client terminal. The automated assistance session comprises communications between the client terminal and an agent terminal during a communication session. The automated assistance session is restored in response to a connection being reestablished with the client terminal after the client terminal disconnects during the communication session. A client communication is received from the client terminal, and a plurality of statements is determined based on the client communication and the communications of the automated assistance session stored in the database. The statements are configured to be manually selected by an agent or automatically selected by an automated agent. The automated agent is engaged for automatically selecting one of the statements in response to a predetermined condition.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of U.S. patent applicationSer. No. 12/899,042, filed on Oct. 6, 2010. The disclosure of thisdocument, including the specification, drawings, and claims, isincorporated herein by reference in its entirety.

BACKGROUND

1. Field of the Disclosure

The present disclosure generally relates to providing automatedassistance during a communication session. More particularly, thepresent disclosure relates to providing automated assistance to acustomer care agent during an on-line communication session.

2. Background Information

On-line communication sessions have recently been incorporated intocustomer care processes as a supplement for, or alternative to,interactive voice response systems. Customer care satisfaction rates aregenerally higher with on-line communication sessions than withinteractive voice response systems. Furthermore, customer care agentsare typically able to engage in multiple communication sessions at onetime.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an exemplary general computer system that includes a set ofinstructions for providing automated assistance to an agent.

FIG. 2 shows an exemplary apparatus for providing automated assistanceto an agent, according to an aspect of the present disclosure.

FIG. 3 shows an exemplary method for providing automated assistance toan agent, according to an aspect of the present disclosure.

FIG. 4 shows another exemplary method for providing automated assistanceto an agent, according to an aspect of the present disclosure.

FIG. 5 shows an exemplary process for providing automated assistance toan agent, according to an aspect of the present disclosure.

DETAILED DESCRIPTION

In view of the foregoing, the present disclosure, through one or more ofits various aspects, embodiments and/or specific features orsub-components, is thus intended to bring out one or more of theadvantages as specifically noted below.

According to a non-limiting embodiment of the present disclosure, anapparatus provides automated assistance to an agent. The apparatusincludes a receiver that receives a client communication from a clientterminal via a network. A processor processes the received clientcommunication and determines a plurality of agent statements based onthe processed and received client communication. A display displays theplurality of agent statements. An input receives an agent communicationfrom the agent. The agent communication is selected from a customstatement that is input by the agent and one of the plurality of agentstatements that is selected by the agent. A transmitter transmits theagent communication to the client via the network.

According to one aspect of the present disclosure, the processor furtherprocesses a previous agent communication input by the agent anddetermines the plurality of agent statements based on the processed andreceived client communication and the processed previous agentcommunication.

According to another aspect of the present disclosure, the processorqueries a backend system to determine the plurality of agent statements.

According to yet another aspect of the present disclosure, the processorprocesses the received client communication based on natural languageprocessing.

According to still another aspect of the present disclosure, theapparatus includes an automated agent that automatically selects one ofthe plurality of agent statements as the agent communication.

According to an additional aspect of the present disclosure, theapparatus includes a communication dump that stores an automatedassistance session in association with the client terminal. Theautomated assistance session includes the client communication, theplurality of agent statements, and the agent communication. A restorerrestores the automated assistance session in response to the clientterminal disconnecting from the network and reconnecting with thenetwork.

According to another aspect of the present disclosure, the agentcommunication comprises the custom statement that is input by the agentand the one of the plurality of agent statements that is selected by theagent.

According to another embodiment of the present disclosure, a method forproviding automated assistance to an agent includes: receiving a clientcommunication from a client terminal via a network; processing thereceived client communication; determining a plurality of agentstatements based on the processed and received client communication;displaying the plurality of agent statements on a display; receiving anagent communication from the agent; and transmitting the agentcommunication to the client terminal via the network. The agentcommunication is selected from a custom statement that is input by theagent and one of the plurality of agent statements that is selected bythe agent.

According to one aspect of the present disclosure, the method furtherincludes processing a previous agent communication input by the agent.In this regard, the plurality of agent statements is based on theprocessed and received client communication and the processed previousagent communication.

According to another aspect of the present disclosure, the methodfurther includes querying a backend system to determine the plurality ofagent statements.

According to yet another aspect of the present disclosure, the receivedclient communication is processed based on natural language processing.

According to still another aspect of the present disclosure, the methodfurther includes automatically selecting one of the plurality of agentstatements as the agent communication.

According to an additional aspect of the present disclosure, the methodfurther includes storing an automated assistance session in associationwith the client terminal. The automated assistance session includes theclient communication, the plurality of agent statements, and the agentcommunication. The automated assistance session is restored in responseto the client terminal disconnecting from the network and reconnectingwith the network.

According to another aspect of the present disclosure, the agentcommunication comprises the custom statement that is input by the agentand the one of the plurality of agent statements that is selected by theagent.

According to another embodiment of the present disclosure, anon-transitory computer-readable medium for providing automatedassistance to an agent includes a client communication code segmentthat, when executed, receives a client communication from a clientterminal via a network. A processing code segment, when executed,processes the received client communication. An agent statement codesegment, when executed, determines a plurality of agent statements basedon the processed and received client communication. A displaying codesegment, when executed, displays the plurality of agent statements on adisplay. An agent communication code segment, when executed, receives anagent communication from the agent. The agent communication is selectedfrom a custom statement that is input by the agent and one of theplurality of agent statements that is selected by the agent. Atransmitting code segment, when executed, transmits the agentcommunication to the client terminal via the network.

According to one aspect of the present disclosure, the processing codesegment further processes a previous agent communication input by theagent, and the agent statement code segment determines the plurality ofagent statements based on the processed and received clientcommunication and the processed previous agent communication.

According to another aspect of the present disclosure, the agentstatement code segment queries a backend system to determine theplurality of agent statements.

According to yet another aspect of the present disclosure, theprocessing code segment processes the received client communicationbased on natural language processing.

According to still another aspect of the present disclosure, the mediumincludes an automated agent code segment that, when executed,automatically selects one of the plurality of agent statements as theagent communication.

According to an additional aspect of the present disclosure, the mediumincludes a storage code segment that, when executed, stores an automatedassistance session in association with the client terminal. Theautomated assistance session comprises the client communication, theplurality of agent statements, and the agent communication. Arestoration code segment restores the automated assistance session whenthe client terminal disconnects from the network and reconnects with thenetwork.

FIG. 1 is an illustrative embodiment of a general computer system thatincludes a set of instructions for providing automated assistance asdescribed herein. The general computer system is shown and is designated100. The computer system 100 can include a set of instructions that canbe executed to cause the computer system 100 to perform any one or moreof the methods or computer based functions disclosed herein. Thecomputer system 100 may operate as a standalone device or may beconnected, for example, using a network 101, to other computer systemsor peripheral devices. For example, the computer system 100 may includeor be included within any one or more of the computers, servers,systems, or communication networks described herein.

In a networked deployment, the computer system may operate in thecapacity of a server or as a client user computer in a server-clientuser network environment, or as a peer computer system in a peer-to-peer(or distributed) network environment. The computer system 100, orportions thereof, can also be implemented as or incorporated intovarious devices, such as a personal computer (PC), a tablet PC, aset-top box (STB), a personal digital assistant (PDA), a mobile device,a palmtop computer, a laptop computer, a desktop computer, acommunications device, a wireless telephone, a personal trusted device,a web appliance, or any other machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine. In a particular embodiment, the computer system 100 canbe implemented using electronic devices that provide voice, video ordata communication. Further, while a single computer system 100 isillustrated, the term “system” shall also be taken to include anycollection of systems or sub-systems that individually or jointlyexecute a set, or multiple sets, of instructions to perform one or morecomputer functions.

As illustrated in FIG. 1, the computer system 100 may include aprocessor 110, for example, a central processing unit (CPU), a graphicsprocessing unit (GPU), or both. Moreover, the computer system 100 caninclude a main memory 120 and a static memory 130 that can communicatewith each other via a bus 108. As shown, the computer system 100 mayfurther include a video display unit 150, such as a liquid crystaldisplay (LCD), an organic light emitting diode (OLED), a flat paneldisplay, a solid state display, or a cathode ray tube (CRT).Additionally, the computer system 100 may include an alpha-numeric inputdevice 160, such as a keyboard, another input device (not shown), suchas a remote control device having a wireless keypad, a keyboard, amicrophone coupled to a speech recognition engine, a camera such as avideo camera or still camera, and a cursor control device 170, such as amouse. The computer system 100 can also include a disk drive unit 180, asignal generation device 190, such as a speaker or remote control, and anetwork interface device 140.

In a particular embodiment, as depicted in FIG. 1, the disk drive unit180 may include a computer-readable medium 182 in which one or more setsof instructions 184, e.g. software, can be embedded. A computer-readablemedium 182 is a tangible article of manufacture, from which sets ofinstructions 184 can be read. Further, the instructions 184 may embodyone or more of the methods or logic as described herein. In a particularembodiment, the instructions 184 may reside completely, or at leastpartially, within the main memory 120, the static memory 130, and/orwithin the processor 110 during execution by the computer system 100.The main memory 120 and the processor 110 also may includecomputer-readable media.

In an alternative embodiment, dedicated hardware implementations, suchas application specific integrated circuits, programmable logic arraysand other hardware devices, can be constructed to implement one or moreof the methods described herein. Applications that may include theapparatus and systems of various embodiments can broadly include avariety of electronic and computer systems. One or more embodimentsdescribed herein may implement functions using two or more specificinterconnected hardware modules or devices with related control and datasignals that can be communicated between and through the modules, or asportions of an application-specific integrated circuit. Accordingly, thepresent system encompasses software, firmware, and hardwareimplementations, or combinations thereof.

In accordance with various embodiments of the present disclosure, themethods described herein may be implemented by software programsexecutable by a computer system. Further, in an exemplary, non-limitedembodiment, implementations can include distributed processing,component/object distributed processing, and parallel processing.Alternatively, virtual computer system processing can be constructed toimplement one or more of the methods or functionality as describedherein.

The present disclosure contemplates a computer-readable medium 182 thatincludes instructions 184 or receives and executes instructions 184responsive to a propagated signal, so that a device connected to anetwork 101 can communicate voice, video or data over the network 101.Further, the instructions 184 may be transmitted or received over thenetwork 101 via the network interface device 140.

According to the present disclosure, during a communication sessionbetween an agent or representative and a client, automated assistance isprovided to the agent or representative. The automated assistance mayconsist of automatically generated phrases, prompts, or statements thatmay be used to guide or assist the agent or representative during thecommunication session with the client. As such, the agent orrepresentative is able to more efficiently and expeditiously communicatewith the client during the communication session, thereby enhancing theappeal and effectiveness of the communication session to the clientwhile enabling the agent or representative to engage in multiplecommunication sessions with multiple clients. Furthermore, the agent orrepresentative may be guided or trained during the communicationsessions via the automatically generated phrases, prompts, orstatements.

FIG. 2 shows an exemplary apparatus 200 for providing automatedassistance to an agent. The agent may be a customer service agent or acustomer service representative. Of course, those skilled in the artappreciate that the agent is not limited to an agent per se. Forexample, the agent may be a person or thing acting on behalf of himself,herself or itself.

The apparatus 200 includes a receiver 202 that receives a clientcommunication from a client terminal 204 via a network 206. The clientcommunication may be a textual communication, audible communication,visual communication, or any other form of communication generally knownor understood in the art. Of course, those skilled in the art appreciatethat the client communication may further be a combination of knownforms of communications. Moreover, the client communication is notlimited to being from a client per se. For example, the clientcommunication may be from a prospective client or any individual orthing, such as, but not limited to, an automated system.

The client terminal 204 is shown in FIG. 2 as a computer. However, inalternative embodiments, the client terminal 204 may be an IP telephone,smartphone, personal data assistant, cellular telephone, or any otherdevice that is capable of transmitting and receiving communications.Moreover, as set forth above, the client terminal 204 is not limited tobeing a terminal of a client per se. That is, the client terminal 204may be a terminal of a prospective client, individual, or thing.

The network 206 is shown in FIG. 2 as a wireless network. However, inalternative embodiments, the network 206 may be a wired network. Thenetwork 206 may be, but is not limited to, a local area network, a widearea network, the Internet, a telephony network, or any other networkcommonly known and understood in the art.

The apparatus 200 includes a processor 208 that processes the receivedclient communication. The processor 208 further determines a pluralityof agent statements based on the processed and received clientcommunication. The agent statements may be, but are not limited to,textual communications, visual communications, and audiblecommunications. For example, the agent statements may include phrases,single words, graphics, charts, or any other communications. As a whole,the agent statements may includes different types of communications.Furthermore, each agent statement itself may be a combination ofdifferent types of communications. The agent statements may be broad,non-descript statements, such as, for example, “I am testing your line”and “please bear with me.” Additionally, or alternatively, the agentstatements may be tailored to the client communication, such as, forexample, specific answers to the client communication and inquiriesbased on the client communication. Of course, those skilled in the artappreciate that the agent statements are not to be limited to theexamples described above.

In an embodiment of the apparatus 200, the processor 208 may furtherprocess a previous agent communication that was input by the agent. Theprocessor 208 may determine the plurality of agent statements based onthe processed and received client communication and the processedprevious agent communication. In this regard, the processor 208 mayprocess a dialogue, or subset thereof, between the client and the agent.In such an embodiment, the processor 208 may determine the agentstatements based on the context and scope of the dialogue, or subsetthereof. The processor 208 may analyze the interaction between theclient and the agent to determine appropriate responses for the agentand to predict future inquiries and replies of the agent.

In the embodiment described above, the previous agent communication isgenerally described as a previous communication between the agent andthe client. However, in alternative embodiments, the previous agentcommunication may be between the agent and another client. Furthermore,in additional embodiments, the previous agent communication may bebetween a different agent and the client, or between a different agentand a different client. The processor 208 may query a database of storedcommunications to determine the previous agent communication. Theprocessor 208 may query the database based on the client communication.In this regard, the processor 208 may query the database based on theclient communication of a present communication session to determinepast communication sessions having similar client communications inorder to determine the scope and content of the present communicationsession.

In an embodiment of the present application, the processor 208 may querya backend system 210 to determine the plurality of agent statements. Thebackend system 210 may provide information related to the client forpersonalizing the agent statements to the client. In a non-limiting andexemplary embodiment of the present application in which a customerservice representative is communicating with a client, the backendsystem 210 may provide personal information of the client, such as, butnot limited to, the client's name, gender, address, or location. Thebackend system 210 may additionally, or alternatively, providedemographic information, billing information, an order history, pastcommunications, or any other information related to the client.Furthermore, the backend system 210 may additionally, or alternatively,provide information unrelated to the client, such as, but not limitedto, model answers, statistical information, product information, orcustomer service center information. The backend system 210 may provideany information which is required by the agent in order to eliminate theneed for the agent to manually find the information. For example, thebackend system 210 may eliminate the need for the agent to launch andsubmit queries through a graphical user interface or to physicallysearch through a reference.

In an embodiment of the present application, the processor 208 maydetermine the agent statements using natural language processing. Inthis regard, the agent statements may be customized suggestions based oncustomer information and the dialogue between the client and the agent.The processor 208 may determine the agent statements according to anyknown and understood methods of natural language processing. Suchnatural language processing may include, but is not limited to,classification of statements into discourse and domain-semanticcategories appropriate to the communication session. Further, categoryprobabilities and precedence rules may be applied and presented, alongwith a plurality of possible agent statements specific to the classifiercategories. Additionally, a taxonomy of domain-semantic categories canbe implemented as part of such natural language processing, so that theagent is presented with a selection of statements that will further thecommunication session by asking for specific information missing in aninitial request where the information will allow more specific action.Of course, those skilled in the art appreciate that the processor 208may also determine the agent statements by methods other than naturallanguage processing.

The apparatus 200 includes a display 212 that displays the agentstatements. The agent statements may be displayed on a list. In anembodiment of the present application, the agent statements aredisplayed on the list based upon priority or frequency of use. The listmay be cleared each time the processor 208 determines new agentstatements that are to be displayed on the list. Alternatively, theagent statements may be cumulatively added to an existing list. In thisregard, the list may be structured as a queue. In embodiments of thepresent application, an agent statement may be deleted from a listmanually by the agent, after a predetermined period of time, upongeneration of new agent statements, when more than a predeterminednumber of agent statements exist, or when the agent selects the agentstatement to be transmitted to the client.

The apparatus 200 includes an input 214 that receives an agentcommunication from the agent. The input 214 is shown in FIG. 2 as akeyboard. However, those skilled in the art appreciate that additional,or alternative, input devices may also be used, such as, but not limitedto, a microphone, mouse, joystick, or controller. Furthermore, thoseskilled in the art appreciate that multiple inputs may also be used.

In an embodiment of the present application, the agent communication maybe a custom statement that is input by the agent or one of the agentstatements that is selected by the agent. In this regard, the agent maydetermine whether to input a custom statement or to select one of theagent statements as determined by the processor 208. As such, theefficiency of the agent is increased by enabling the agent to select oneof the automatically generated agent statements while the personality ofthe agent is maintained by enabling the agent to input a customizedstatement.

In another embodiment of the present application, the agentcommunication may further be a combination of a custom statement that isinput by the agent and one of the agent statements that is selected bythe agent. For example, the agent statements may be templates that theagent customizes via the input 214. Additionally, or alternatively, theagent may be able to edit a selected agent statement via the input 214.In this regard, the efficiency of the agent is again increased whilemaintaining the personality of the agent.

In an embodiment of the apparatus 200, the apparatus 200 includes anautomated agent that automatically selects one of the agent statementsas the agent communication. In such an embodiment, the agentcommunication is not received via the input 214. Rather, the automatedagent interacts directly with the client terminal 204. The automatedagent may automatically select one of the agent statements based on apriority of the agent statements or based on a frequency of use of theagent statements. In alternative embodiments, the automated agent mayautomatically select one of the agent statements based upon other knownmethods, such as, but not limited to, a history of an agent's selectionof one of the agent statements.

In an embodiment of the apparatus 200, the agent may selectively engageand disengage the automated agent via the input 214. Additionally, oralternatively, the automated agent may be automatically engaged ordisengaged in response to a predetermined condition. For example, theautomated agent may be engaged or disengaged based upon a content of areceived client communication. Additionally, or alternatively, theautomated agent may be engaged or disengaged based upon the elapse of apredetermined period of time or based upon the activity or inactively ofthe agent. Of course, those skilled in the art appreciate that theautomated agent may be engaged and/or disengaged based upon additional,or alternative, conditions.

As shown in FIG. 2, the apparatus 200 includes a transmitter 216 thattransmits the agent communication to the client terminal 204 via thenetwork 206. The transmitter 216 may automatically transmit the agentcommunication to the client terminal 204 in response to the input 214receiving the input of the custom statement from the agent, the input214 receiving the selection of the one of the agent statements by theagent, and the automated agent automatically selecting one of the agentstatements. Alternatively, the transmitter 216 may transmit the agentcommunication to the client terminal 204 in response to an input fromthe agent.

In the embodiment of the apparatus 200 as shown in FIG. 2, the apparatus200 further includes a communication dump 218. The communication dump218 stores an automated assistance session in association with theclient terminal 204. The automated assistance session may comprise anycombination of the client communications, the agent statements, and theagent communications that are transmitted between the client terminal204 and the apparatus 200 during a communication session. If thecommunication session is interrupted, such as when the client terminal204 is unexpectedly disconnected from the network 206, the communicationsession may be restored when the interruption ceases to exist, such aswhen the client terminal 204 reconnects with the network 206.

FIG. 3 shows an overview of an exemplary method 300 for providingautomated assistance to an agent. At S302, a client communication isreceived from a client terminal via a network. The client communicationmay be displayed on a display of the agent at S304. At S306, thereceived client communication is processed, and, at S308, a plurality ofagent statements is determined based on the processed and receivedclient communication. In an embodiment of the method 300, the pluralityof agent statements is determined based on natural language processing.

According to such an embodiment, when the communication session is achat session, such natural language processing may include, but is notlimited to, the classification of chat requests into discourse anddomain-semantic categories appropriate to the chat domain. Further,category probabilities and precedence rules can be applied andpresented, along with a plurality of possible agent chat responsesspecific to the classifier categories. Additionally, a taxonomy ofdomain-semantic categories can be implemented as part of such naturallanguage processing, so that the chat agent is presented with aselection of chat responses that will further the dialog by asking forspecific information missing in an initial chat request where saidinformation will allow more specific action.

As shown in FIG. 3, in an embodiment of the method 300, a backend systemmay be queried at S310 to determine the plurality of agent statements.The back end system may be queried based on the received clientcommunication or based on information relating to a user of the clientterminal. The backend system may include predetermined responses for theagent, personal information relating to the user of the client terminal,or a database of communication transcripts. Of course, those skilled inthe art appreciate that the backend system may include any additional,or alternative, information for determining the plurality of agentstatements.

At S312, the agent statements are displayed on the display of the agent.Thereafter, as shown in FIG. 3, the agent may select one of the agentstatements at S312, the agent may input a custom statement at S316, oran automated agent may automatically select one of the agent statementsat S318. The one of the agent statement selected by the agent, thecustom statement, or the agent statement automatically selected by theautomated agent is received as an agent communication at S320. In analternative embodiment of the method 300, the agent communication may bea combination of one of the agent statements and a custom statement. AtS322, the agent communication may be displayed on the display of theagent. At S322, the agent statement is transmitted to the customerterminal.

FIG. 4 shows an overview of another exemplary method 400 for providingautomated assistance to an agent. According to the method 400, aprevious agent communication is received at S402 and a clientcommunication is received at S404. In other words, a dialogue betweenthe agent and a client is received at S402 and S404. At S406, theprevious agent communication and the client communication are processed.The communications may be processed using natural language processing.At S408, a plurality of agent statements is determined based on theprocessed previous agent communication and client communication. AtS410, an agent communication is received. The agent communication may bea custom statement that is input by the agent or one of the agentstatements that is selected by the agent. The agent communication istransmitted to the client at S412.

In the method 400 as shown in FIG. 4, the previous agent communication,the client communication, and the agent communication are stored in acommunication dump at S414. In this regard, in the event that acommunication session between the agent and the client is interrupted,the communication session may be restored when the interruption ceasesto exist.

FIG. 5 shows an overview of an exemplary process 500 for providingautomated assistance to an agent. According to the process 500, an agent502 interacts with a customer by transmitting and receivingcommunications 504 to and from the customer. The communications 504 arestored in a chat dump 506 so that a communication session between theagent 502 and the customer may be restarted in the event that thecommunication session is interrupted. A natural language processor 508processes the communications 504 transmitted to and received from theclient to determine a list of key phrases 510. The list of key phrases510 is provided to the agent 502 to assist the agent 502 incommunicating with the customer. As shown in FIG. 5, the naturallanguage processor 508 may query a backend system 512 to determine thekey phrases list 510.

As described herein, automated guidance may be provided to an agent orrepresentative to assist in customer service. The automated guidanceenables the agent or representative to efficiently and expeditiouslyinteract with a client. However, since the automated guidance is onlypartially automated, the quality of the interaction between the agent orrepresentative and a client is maintained. In other words, providing theagent or representative with the option of inputting a custom statementor selecting from automated statements improves the efficiency of theagent or representative while maintaining the personality of the agentor representative. As such, the appeal and effectiveness of the customerservice is improved. Moreover, the agent or representative is able tocompetently engage in multiple communication sessions with multipleclients without sacrificing the quality of the customer service.

Although the invention has been described with reference to severalexemplary embodiments, it is understood that the words that have beenused are words of description and illustration, rather than words oflimitation. Changes may be made within the purview of the appendedclaims, as presently stated and as amended, without departing from thescope and spirit of the invention in its aspects. Although the inventionhas been described with reference to particular means, materials andembodiments, the invention is not intended to be limited to theparticulars disclosed; rather the invention extends to all functionallyequivalent structures, methods, and uses such as are within the scope ofthe appended claims.

For example, although the description herein references agents andclients, the apparatus, methods, and computer-readable medium describedherein would be applicable to any individuals and/or things. Similarly,the descriptions herein would be applicable for uses other thanproviding customer service.

While a computer-readable medium herein may be shown to be a singlemedium, the term “computer-readable medium” includes a single medium ormultiple media, such as a centralized or distributed database, and/orassociated caches and servers that store one or more sets ofinstructions. The term “computer-readable medium” shall also include anymedium that is capable of storing, encoding or carrying a set ofinstructions for execution by a processor or that cause a computersystem to perform any one or more of the methods or operations disclosedherein.

In a particular non-limiting, exemplary embodiment, thecomputer-readable medium can include a solid-state memory such as amemory card or other package that houses one or more non-volatileread-only memories. Further, the computer-readable medium can be arandom access memory or other volatile re-writable memory. Additionally,the computer-readable medium can include a magneto-optical or opticalmedium, such as a disk or tapes or other storage device to capturecarrier wave signals such as a signal communicated over a transmissionmedium. Accordingly, the disclosure is considered to include anycomputer-readable medium or other equivalents and successor media, inwhich data or instructions may be stored.

Although the present specification describes components and functionsthat may be implemented in particular embodiments with reference toparticular standards and protocols, the disclosure is not limited tosuch standards and protocols. For example, standards for power overethernet represent an example of the state of the art. Such standardsare periodically superseded by faster or more efficient equivalentshaving essentially the same functions. Accordingly, replacementstandards and protocols having the same or similar functions areconsidered equivalents thereof.

The illustrations of the embodiments described herein are intended toprovide a general understanding of the structure of the variousembodiments. The illustrations are not intended to serve as a completedescription of all of the elements and features of apparatus and systemsthat utilize the structures or methods described herein. Many otherembodiments may be apparent to those of skill in the art upon reviewingthe disclosure. Other embodiments may be utilized and derived from thedisclosure, such that structural and logical substitutions and changesmay be made without departing from the scope of the disclosure.Additionally, the illustrations are merely representational and may notbe drawn to scale. Certain proportions within the illustrations may beexaggerated, while other proportions may be minimized. Accordingly, thedisclosure and the figures are to be regarded as illustrative ratherthan restrictive.

One or more embodiments of the disclosure may be referred to herein,individually and/or collectively, by the term “invention” merely forconvenience and without intending to voluntarily limit the scope of thisapplication to any particular invention or inventive concept. Moreover,although specific embodiments have been illustrated and describedherein, it should be appreciated that any subsequent arrangementdesigned to achieve the same or similar purpose may be substituted forthe specific embodiments shown. This disclosure is intended to cover anyand all subsequent adaptations or variations of various embodiments.Combinations of the above embodiments, and other embodiments notspecifically described herein, will be apparent to those of skill in theart upon reviewing the description.

The Abstract of the Disclosure is provided to comply with 37 C.F.R.§1.72(b) and is submitted with the understanding that it will not beused to interpret or limit the scope or meaning of the claims. Inaddition, in the foregoing Detailed Description, various features may begrouped together or described in a single embodiment for the purpose ofstreamlining the disclosure. This disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter may be directed toless than all of the features of any of the disclosed embodiments. Thus,the following claims are incorporated into the Detailed Description,with each claim standing on its own as defining separately claimedsubject matter.

The above disclosed subject matter is to be considered illustrative, andnot restrictive, and the appended claims are intended to cover all suchmodifications, enhancements, and other embodiments which fall within thetrue spirit and scope of the present disclosure. Thus, to the maximumextent allowed by law, the scope of the present disclosure is to bedetermined by the broadest permissible interpretation of the followingclaims and their equivalents, and shall not be restricted or limited bythe foregoing detailed description.

What is claimed is:
 1. A system for providing automated assistance,comprising: a display; a processor; a database that stores an automatedassistance session in association with a client terminal, the automatedassistance session comprising communications between the client terminaland an agent terminal during a communication session; and a memorystoring instructions that, when executed by the processor, cause theprocessor to perform operations including: detecting when the clientterminal is unexpectedly disconnected from a network during thecommunication session; detecting when a network connection isreestablished with the client terminal; restoring the automatedassistance session m response to a connection being reestablished withthe client terminal via a network; after the automated assistancesession is restored, receiving a client communication from the clientterminal via the network; determining a plurality of statements based onthe received client communication and also based on the communicationsof the automated assistance session stored in the database before theclient terminal was unexpectedly disconnected from the network; anddisplaying the plurality of statements on the display, each of theplurality of statements configured to be both manually selected by anagent and to be automatically selected by an automated agent; engagingthe automated agent for automatically selecting one of the plurality ofstatements in response to a predetermined condition, wherein thepredetermined condition comprises any of an elapse of a predeterminedperiod of time and an inactivity of the agent; and transmitting the oneof the plurality of statements to the client terminal in response tobeing automatically selected by the automated agent.
 2. The system asset forth in claim 1, wherein the communications of the automatedassistance session include a previous agent communication, the previousagent communication being transmitted by the agent to the clientterminal during the communication session, and the plurality ofstatements is determined based on the client communication and theprevious agent communication.
 3. The system as set forth in claim 1,wherein the communications of the automated assistance session include adialogue between the agent and the client terminal, and the plurality ofstatements is determined based on the client communication and thedialogue.
 4. The system as set forth in claim 1, wherein the automatedagent is configured to automatically select the one of the plurality ofstatements based on a frequency of use of the plurality of statements.5. The system as set forth in claim 4, wherein the plurality ofstatements is displayed on the display in a list based on the frequencyof use of the plurality of statements.
 6. The system as set forth inclaim 1, wherein the automated agent is configured to automaticallyselect the one of the plurality of statements based on a history ofselection of the plurality of statements by the agent.
 7. The system asset forth in claim 1, wherein the predetermined condition includes aninput being received from the agent.
 8. The system as set forth in claim1, wherein the plurality of statements is configured to be edited by theagent.
 9. A method for providing automated assistance, comprising:storing, in a database, an automated assistance session in associationwith a client terminal, the automated assistance session comprisingcommunications between the client terminal and an agent terminal duringa communication session; detecting when the client terminal isunexpectedly disconnected from a network during the communicationsession; detecting when a network connection is reestablished with theclient terminal; restoring the automated assistance session in responseto a connection being reestablished with the client terminal via anetwork session; after the automated assistance session is restored,receiving a client communication from the client terminal via thenetwork; determining, by a processor, a plurality of statements based onthe received client communication and also based on the communicationsof the automated assistance session stored in the database before theclient terminal was unexpectedly disconnected from the network; anddisplaying, on a display, the plurality of statements, each of theplurality of statements configured to be both manually selected by anagent and to be automatically selected by an automated agent; engagingthe automated agent for automatically selecting one of the plurality ofstatements in response to a predetermined condition, wherein thepredetermined condition comprises any of an elapse of a predeterminedperiod of time and an inactivity of the agent; and transmitting the oneof the plurality of statements to the client terminal in response tobeing automatically selected by the automated agent.
 10. The method asset forth in claim 9, wherein the communications of the automatedassistance session include a previous agent communication, the previousagent communication being transmitted by the agent to the clientterminal during the communication session, and the plurality ofstatements is determined based on the client communication and theprevious agent communication.
 11. The method as set forth in claim 9,wherein the communications of the automated assistance session include adialogue between the agent and the client terminal, and the plurality ofstatements is determined based on the client communication and thedialogue.
 12. The method as set forth in claim 9, wherein the automatedagent is configured to automatically select the one of the plurality ofstatements based on a frequency of use of the plurality of statements.13. A non-transitory computer-readable medium having an executablecomputer program for providing automated assistance that, when executedby a processor, causes the processor to perform operations comprising:storing, in a database, an automated assistance session m associationwith a client terminal, the automated assistance session comprisingcommunications between the client terminal and an agent terminal duringa communication session; detecting when the client terminal isunexpectedly disconnected from a network during the communicationsession; detecting when a network connection is reestablished with theclient terminal; restoring the automated assistance session in responseto a connection being reestablished with the client terminal via anetwork; after the automated assistance session is restored, receiving aclient communication from the client terminal via the network;determining a plurality of statements based on the received clientcommunication and also based on the communications of the automatedassistance session stored in the database before the client terminal wasunexpectedly disconnected from the network; and displaying the pluralityof statements on a display, each of the plurality of statementsconfigured to be both manually selected by an agent and to beautomatically selected by an automated agent; engaging the automatedagent for automatically selecting one of the plurality of statements inresponse to a predetermined condition, wherein the predeterminedcondition comprises any of an elapse of a predetermined period of timeand an inactivity of the agent; and transmitting the one of theplurality of statements to the client terminal in response to beingautomatically selected by the automated agent.
 14. The non-transitorycomputer-readable medium as set forth in claim 13, wherein thecommunications of the automated assistance session include a previousagent communication, the previous agent communication being transmittedby the agent to the client terminal during the communication session,and the plurality of statements is determined based on the clientcommunication and the previous agent communication.
 15. Thenon-transitory computer-readable medium as set forth in claim 13,wherein the communications of the automated assistance session include adialogue between the agent and the client terminal, and the plurality ofstatements is determined based on the client communication and thedialogue.
 16. The non-transitory computer-readable medium as set forthin claim 13, wherein the automated agent is configured to automaticallyselect the one of the plurality of statements based on a frequency ofuse of the plurality of statements.